import { getItem, setItem } from '@/utils/storage'
import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    // user变量用来存储 token的数据，存储的是对象
    // 核心思想2：vuex中的初始数据应该从localStorage中读取出来
    user: getItem('USER_TOKEN')
  },
  getters: {
  },
  mutations: {
    // 同步修改user变量数据的mutation
    setUser (state, data) {
      state.user = data
      // 核心思想1：每次修改vuex中的数据，需要同时修改 localStorage中的数据
      setItem('USER_TOKEN', data)
    }
  },
  actions: {
  },
  modules: {
  }
})
